//for ZBrush 4R6 and above     
[RoutineDef,DoIt,
[IUnPress,Tool:Display Properties:BPR Transparent Shading]
//[ISet,Tool:Display Properties:BPR Visibility,100]
//[ISet,Tool:Display Properties:BPR Shadows,100]
]//end of def

[IButton,???,"BPR 100% Visibility CHOICE",
   [IShowActions,0]
   [IConfig,4.6]
  [VarSet,choice,[MessageYesNo,"CHOICE, Yes for all, No for just one","Do you wish to make the change?"]]//this worked
[If,choice=1,
[IFreeze,
  [If,[IExists,Tool:SubTool:SelectDown],
   //store active subtool
   [VarSet,activeSubTool,[SubToolGetActiveIndex]]
   //loop through all subtools
   [Loop,[SubToolGetCount],	
    [SubToolSelect,[Var,n]]	   
     [RoutineCall,DoIt] //calls the routine for what we want to do      	
   ,n]//end loop
   //reselect active subtool
    [SubToolSelect,activeSubTool]
	]//end if,
]//end freeze
//[IPress,Transform:Xpose]
//[IPress,Transform:Fit]
//[IPress,Transform:Fit]
,
[RoutineCall,DoIt]

]//end if
]//end of macro button